home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / mdishe / string.bas < prev    next >
BASIC Source File  |  1994-12-27  |  4KB  |  161 lines

  1. ' ********************************************************
  2. '        MDI Standard Application Shell
  3. ' ********************************************************
  4. '
  5. ' SUMMARY
  6. ' -------
  7. ' This file is part of an MDI application "skeleton"
  8. ' created by John Blessing of Leigh Business Enterprises Ltd.
  9. '
  10. ' FEATURES
  11. ' --------
  12. ' Selection of application database.
  13. ' Compact/Repair of database.
  14. ' 'Helptips' on toolbar items.
  15. ' Support for Help files.
  16. ' MDI child forms tiling etc.
  17. ' Error trapping.
  18. ' 'Nag' screen support for shareware authors.
  19. ' Support for 3D dialogs (switched off in design mode
  20. '   to prevent GPFs)
  21. '
  22. ' USE
  23. ' ---
  24. ' You need VB Pro to use this shell, although it could be
  25. ' modified to run under the standard edition.
  26. '
  27. ' You will need to set up some information in APP.BAS,
  28. ' particularly in SetAppInfo().  You will also need to add
  29. ' your own application specific code to this module.
  30. '
  31. ' DISTRIBUTION
  32. ' ------------
  33. ' This program is "FreeWare" and may be used and distributed
  34. ' as you wish.
  35. '
  36. ' It incorporates some ideas/code from other authors and these
  37. ' are acknowledged in the appropriate module.
  38. '
  39. ' We hope that you will find it useful.  If you wish to discuss it
  40. ' then please e-mail us on Compuserve 100444,623.
  41. '
  42. ' ADVERTISEMENT!
  43. ' --------------
  44. ' Are you looking for a helpdesk system? Or does your company
  45. ' want to track and monitor the progress of any work activity?
  46. ' We market a system which could be of interest to you.
  47. '
  48. ' PROGRESS is available for download from the Business section
  49. ' of the Windows Shareware forum on Compuserve
  50. ' (filename PRGRSS10.ZIP).  It's a large program, so in the
  51. ' same section you will also find the help files and
  52. ' documentation as  PRGSSDOC.ZIP which is quicker to download
  53. ' and will give you a good idea of the functionality of PROGRESS.
  54. '
  55. ' Dec 1994
  56. '
  57. Option Explicit
  58.  
  59. '======================================================================
  60. 'Form/Module:
  61. '   String.bas
  62. '
  63. 'Procedure:
  64. '   searchreplace
  65. '
  66. 'Modifications:
  67. '   25/12/94   JBL     Build
  68. '
  69. 'Description:
  70. '   Replaces all occurences of sSearch in sTarget
  71. '   Search is not case sensitive
  72. '======================================================================
  73. '
  74. Sub SearchReplace (sTarget As String, sSearch As String, sReplace As String)
  75.     
  76.     Dim iReplaceAt, isSearchLen, isReplaceLen, isTargetLen  As Integer
  77.     Dim sTemp As String
  78.  
  79.     'General Error Handler
  80.     If Not bDesignMode() Then
  81.         On Error GoTo Error_Search
  82.     End If
  83.     
  84.     isSearchLen = Len(sSearch)
  85.     isReplaceLen = Len(sReplace)
  86.  
  87.     iReplaceAt = InStr(1, sTarget, sSearch, 1)
  88.  
  89.     While iReplaceAt
  90.         isTargetLen = Len(sTarget)
  91.         'found, so get everything to the left of it
  92.         sTemp = Left$(sTarget, iReplaceAt - 1)
  93.         'add the replacement text
  94.         sTemp = sTemp & sReplace
  95.         'add everything to the right of it
  96.         sTemp = sTemp & Right$(sTarget, isTargetLen - isSearchLen - iReplaceAt + 1)
  97.         
  98.         sTarget = sTemp
  99.  
  100.         'any more?
  101.         iReplaceAt = InStr(1, sTarget, sSearch, 1)
  102.  
  103.     Wend
  104.  
  105.     Exit Sub
  106.  
  107.  
  108. Error_Search:
  109.     'call the generic error handler
  110.     GenErrorHandler "String.bas - SearchReplace()", Err, Error$
  111. '
  112.     Resume Exit_Search
  113. '
  114. Exit_Search:
  115.  
  116. End Sub
  117.  
  118. '======================================================================
  119. 'Form/Module:
  120. '   string.bas
  121. '
  122. 'Procedure:
  123. '   sNullTrim
  124. '
  125. 'Modifications:
  126. '   25/12/94   JBL     Build
  127. '
  128. 'Description:
  129. '   strips off trailing null chars as returned by API functions
  130. '======================================================================
  131. '
  132. Function sNullTrim (Incoming As String) As String
  133.     Dim iTemp As String
  134.     Dim i As Integer
  135.     
  136.     'General Error Handler
  137.     If Not bDesignMode() Then
  138.         On Error GoTo Error_sNullTrim
  139.     End If
  140.     
  141.  
  142.     iTemp = Incoming
  143.     i = InStr(iTemp, Chr$(0))
  144.     If i Then iTemp = Left$(iTemp, i - 1)
  145.     iTemp = Trim$(iTemp)
  146.  
  147.     sNullTrim = iTemp
  148.     Exit Function
  149.  
  150.  
  151. Error_sNullTrim:
  152.     'call the generic error handler
  153.     GenErrorHandler "String.bas - sNullTrim()", Err, Error$
  154. '
  155.     Resume Exit_sNullTrim
  156. '
  157. Exit_sNullTrim:
  158.  
  159. End Function
  160.  
  161.